Skip to contentSkip to conversation

net: irda: hang when doing anything to a socket in accept()

DISCUSSION Sasha Levin 1 participant 1 message Dec 6, 2013

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Hi all,

I've noticed that once an IRDA socket is in accept(), any further action that requires locking the socket will result in a hang until accept() is completed (which may take a while). After a while hung task spew is printed out.

		thread 1		|		thread 2
					|
	listen(sock)			|	
		bind(sock)		|
			accept(sock)	|
					|	setsockopt(sock)
						*HANG*	

I'm not sure I can provide a properly tested fix since I don't actually have IRDA hardware to test on.

Thanks,
Sasha