[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4BFFA4EF.4050401@euromail.se>
Date: Fri, 28 May 2010 13:11:43 +0200
From: Henrik Rydberg <rydberg@...omail.se>
To: Stefani Seibold <stefani@...bold.net>
CC: linux-kernel@...r.kernel.org, akpm@...ux-foundation.org,
andi@...stfloor.org, gregkh@...e.de, alan@...rguk.ukuu.org.uk,
tytso@....edu, iws@...o.caltech.edu
Subject: Re: really generic, type save and type definable.
Stefani Seibold wrote:
> Am Freitag, den 28.05.2010, 09:43 +0200 schrieb Henrik Rydberg:
>> stefani@...bold.net wrote:
>> [...]
>>> The main goal was to provide an API which is very intuitive, save and easy
>>> to use. So linux will get now a powerful fifo API which provides all what
>>> a developer needs. This will save in the future a lot of kernel space, since
>>> there is no need to write an own implementation. Most of the device driver
>>> developers need a fifo, and also deep kernel development will gain benefit
>>> from this API.
>> The meaning of the term "multiple readers" referred to in the header is somewhat
>> ambiguous. It could in principle refer to concurrent reading of the same
>> position, or concurrent reading from different positions. Imaginably, those
>> cases also have different locking behavior.
>>
>> What happens if two fifos are initialized with the same memory buffer?
>>
>
> That would be a big nonsense! Tell me a real use case for such kind of
> request...
I am referring to a buffer where one thread writes data to the queue, and
several other threads read the _same_ data from the queue. Such a queue would
most likely have separate storage for the (buffer, head) on one hand, and the
tails on the other hand. I was interested in whether anyone had put any thought
into it, in particular with regard to a possible lock-less implementation.
I understand that it is not a good idea to use the same memory buffer in your
kfifo implementation, I was merely suggesting the documentation say so as well.
>
>> What about one-to-many and many-to-one cases? The input system and the logging
>> facilities could serve as examples where such buffers would be useful.
>>
>
> There is no ne-to-many and many-to-one cases since the API will handle
> this. You can not read more data then fit in the fifo, also u can not
> write more data the fifo can handle.
I am not sure is this comment means "the API will not allow it", or if we simply
got off on the wrong foot. If there is no interest in a one-to-many buffer, all
is fine. Otherwise, this thread seems like an appropriate place for such a
discussion, does it not?
Henrik
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists