Thread (3 messages) 3 messages, 2 authors, 2011-07-29

Regarding connector netlink running out of buffer space.

From: Jeff Haran <hidden>
Date: 2011-07-29 20:53:58

-----Original Message-----
From: kernelnewbies-bounces at kernelnewbies.org [mailto:kernelnewbies-
bounces at kernelnewbies.org] On Behalf Of mindentropy
Sent: Friday, July 29, 2011 1:35 PM
To: kernelnewbies at kernelnewbies.org
Subject: Regarding connector netlink running out of buffer space.

Hi,
  I am trying to benchmark connector netlink and am passing a file and
sending
the same to listening userspace app's using connectors i.e. cat
filename >
/dev/myconnector and an app listening. When I do this I always run
into
ENOBUFS or "No buffer space available" for files greater than 2MB.
Now how should I fix this?
a) Increase the socket buffers? My rmem_max is 131071 and rmem_default
is
126976
b) Should I check for the seq and ack and resend the packets? If yes
how
much
packets should I not discard to do a resend?

Are there any other ways? Also I am not sure why local loop would
cause
enobufs? I am running this on a quad core with 3G of RAM.

Thanks.
Just guessing here, but it's possible the kernel is attempting to
kmalloc() a single buffer for the whole file and with the file at 2MB
there's no slab/slob/slub with buffers that big. You might need to write
to /dev/myconnector in smaller chunks.

Again, just a guess.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help