Re: [PATCH] usb: gadget: ffs: add eventfd notification about ffs events

From: Felipe Balbi
Date: Tue Jan 27 2015 - 10:25:52 EST


On Fri, Jan 23, 2015 at 01:34:45PM +0100, Robert Baldyga wrote:
> On 01/23/2015 01:21 PM, MichaÅ Nazarewicz wrote:
> > 23 sty 2015 10:28 "Robert Baldyga" <r.baldyga@xxxxxxxxxxx
> > <mailto:r.baldyga@xxxxxxxxxxx>> napisaÅ(a):
> >> Add eventfd which notifies userspace about ep0 events and AIO completion
> >> events. It simplifies using of FunctionFS with event loop, because now
> >> we need to poll on single file (instead of polling on ep0 and eventfd's
> >> supplied to AIO layer).
> >>
> >> FunctionFS eventfd is not triggered if another eventfd is supplied to
> >> AIO layer (in AIO request). It can be useful, for example, when we want
> >> to handle AIO transations for chosen endpoint in separate thread.
> >>
> >> Signed-off-by: Robert Baldyga
> >
> > I don't know much about eventfd interface bit from ffs point of view:
> >
> > Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx <mailto:mina86@xxxxxxxxxx>>
> >
> >> @@ -2180,6 +2191,20 @@ static int __ffs_data_got_descs(struct ffs_data
> > *ffs,
> >> goto error;
> >> }
> >>
> >> + if (flags & FUNCTIONFS_EVENTFD) {
> >> + if (len < 4)
> >> + goto error;
> >> + ffs->ffs_eventfd =
> >> + eventfd_ctx_fdget((int)get_unaligned_le32(data));
> >> + if (IS_ERR(ffs->ffs_eventfd)) {
> >> + ffs->ffs_eventfd = NULL;
> >> + ret = PTR_ERR(ffs->ffs_eventfd);
> >
> > Need to swap those lines.
> >
> >> + goto error;
> >> + }
> >> + data += 4;
> >> + len -= 4;
> >> + }
> >> +
> >> /* Read fs_count, hs_count and ss_count (if present) */
> >> for (i = 0; i < 3; ++i) {
> >> if (!(flags & (1 << i))) {
> >
>
> Good catch, thanks!

Are you sending a new version, or should I fix this myself?

--
balbi

Attachment: signature.asc
Description: Digital signature