On Tue, Jan 27, 2015 at 09:25:30AM -0600, Felipe Balbi wrote: > 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? nevermind, found v2 :) -- balbi
Attachment:
signature.asc
Description: Digital signature