On Mon, 2015-01-19 at 08:31 -0700, Jens Axboe wrote: > On 01/19/2015 07:18 AM, Milosz Tanski wrote: > > On Mon, Jan 19, 2015 at 2:34 AM, James Bottomley > > <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote: > >> On Sun, 2015-01-18 at 23:12 -0800, Jeremy Allison wrote: > >>> On Sun, Jan 18, 2015 at 10:49:36PM -0500, Milosz Tanski wrote: > >>>> > >>>> I have the first version of the FIO cifs support via samba in my fork > >>>> of FIO here: https://github.com/mtanski/fio/tree/samba > >>>> > >>>> Right now it only supports sync mode of FIO (eg. can't submit multiple > >>>> outstanding requests) but I'm looking into how to make it work with > >>>> smb2 read/write calls with the async flag. > >>>> > >>>> Additionally, I'm sure I'm doing some things not quite right in terms > >>>> of smbcli usage as it was a decent amount of trial and error to get it > >>>> to connect (esp. the setup before smbcli_full_connection). Finally, it > >>>> looks like the more complex api I'm using (as opposed to smbclient, > >>>> because I want the async calls) doesn't quite fully export all calls I > >>>> need via headers / public dyn libs so it's a bit of a hack to get it > >>>> to build: https://github.com/mtanski/fio/commit/7fd35359259b409ed023b924cb2758e9efb9950c#diff-1 > >>>> > >>>> But it works for my randread tests with zipf and the great part is > >>>> that it should provide a flexible way to test samba with many fake > >>>> clients and access patterns. So... progress. > >>> > >>> One problem here. Looks like fio is under GPLv2-only, > >>> is that correct ? > >> > >> Seems so from the LICENSE file. > >> > >>> If so there's no way to combine the two codebases, > >>> as Samba is under GPLv3-or-later with parts under LGPLv3-or-later. > >>> > >>> fio needs to be GPLv2-or-later in order to be > >>> able to use with libsmbclient. > >> > >> That's one of these pointless licensing complexities that annoy > >> distributions so much ... they're both open source, so there's no real > >> problem except the licence incompatibility. The usual way out of it is > >> just to dual licence the incompatible component. > >> > >> James > >> > >> > > > > Sadly, in this case there's nothing I can do about the license; both > > projects have a right to determine their own licensing. Hopefully, the > > parties can come to some kind of agreement since it would be > > beneficial to use fio to test samba. > > > > This works well enough for me to test test preadv2 using samba and get > > numbers. So I'll use this to do some preadv2 testing using samba for > > different workloads. > > I didn't look at your code yet, but I'm assuming it's a self contained > IO engine. So we should be able to make that work, by only linking the > engine itself against libsmbclient. But sheesh, what a pain in the butt, > why can't we just all be friends. > > So don't worry about licensing for now, just work on improving the > engine and we'll sort the non-technical details out. For fio, it likely doesn't matter. Most people download the repository and compile it themselves when building the tool. In that case, there's no licence violation anyway (all GPL issues, including technical licence incompatibility, manifest on distribution not on use). It is a problem for the distributors, but they're well used to these type of self inflicted wounds. James -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html