From owner-freebsd-scsi@freebsd.org Mon Feb 29 21:45:06 2016 Return-Path: Delivered-To: freebsd-scsi@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DDFDBAB88FB for ; Mon, 29 Feb 2016 21:45:05 +0000 (UTC) (envelope-from ken@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id CE69A1DC1 for ; Mon, 29 Feb 2016 21:45:05 +0000 (UTC) (envelope-from ken@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id CC97DAB88F7; Mon, 29 Feb 2016 21:45:05 +0000 (UTC) Delivered-To: scsi@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CC191AB88F6; Mon, 29 Feb 2016 21:45:05 +0000 (UTC) (envelope-from ken@freebsd.org) Received: from mithlond.kdm.org (mithlond.kdm.org [96.89.93.250]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "A1-33714", Issuer "A1-33714" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 845D91DC0; Mon, 29 Feb 2016 21:45:05 +0000 (UTC) (envelope-from ken@freebsd.org) Received: from [10.0.0.27] (mbp2013-wired.int.kdm.org [10.0.0.27]) (authenticated bits=0) by mithlond.kdm.org (8.15.2/8.14.9) with ESMTPSA id u1TLj3Uq067615 (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 29 Feb 2016 16:45:04 -0500 (EST) (envelope-from ken@freebsd.org) From: Ken Merry Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: FUSE extended attribute patches available Date: Mon, 29 Feb 2016 16:45:03 -0500 Message-Id: Cc: scsi@freebsd.org To: fs@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 9.2 \(3112\)) X-Mailer: Apple Mail (2.3112) X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (mithlond.kdm.org [96.89.93.250]); Mon, 29 Feb 2016 16:45:04 -0500 (EST) X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Feb 2016 21:45:06 -0000 I have patches for FreeBSD=E2=80=99s FUSE filesystem kernel module to = support extended attributes: https://people.freebsd.org/~ken/fuse_extattr.20160229.1.txt The patch implements the get/set/delete/list extended attribute methods. = The listing code also converts extended attribute lists from the = Linux/FUSE format to the FreeBSD format. For example: # touch foo # ls -la foo -rwxrwxrwx 1 root wheel 0 Feb 29 21:40 foo # lsextattr user foo foo # setextattr user testattr1 "12345678" foo # lsextattr user foo foo testattr1 # getextattr user testattr1 foo foo 12345678 # setextattr user testattr2 "87654321" foo # lsextattr user foo foo testattr2 testattr1 # rmextattr user testattr1 foo # lsextattr user foo foo testattr2 # getextattr user testattr1 foo getextattr: foo: failed: Attribute not found # getextattr user testattr2 foo foo 87654321 Just to be clear on what this does, it only provides extended attribute = support to FreeBSD applications if the underlying FUSE filesystem = implements FUSE extended attribute support. Many FUSE filesystems = don=E2=80=99t support the extended attribute VFS operations. I have tested this out on IBM=E2=80=99s LTFS implementation, but I have = not yet found another FUSE filesystem that supports extended attributes. = If anyone knows of one, please let me know so I can try it out. (I = looked through a number of the filesystems in sysutils/fusefs* in the = ports tree.) Any feedback is welcome. I=E2=80=99m planning to check this into = FreeBSD/head in the next week or so. Obviously, I=E2=80=99ve also ported IBM=E2=80=99s LTFS implementation to = FreeBSD. It works in the standard FUSE mode, and you can also link it = into an application as a library if you don=E2=80=99t want to incur the = overhead of running through FUSE. I haven=E2=80=99t gotten around to = packaging it up to go out for testing / review. If anyone has IBM LTO-5 or newer tape drives, or IBM TS1140 or newer = tape drives, and wants to try it out, let me know. I=E2=80=99ll send = you the code when I=E2=80=99ve got it at least somewhat ready. This is = IBM-specific, and won=E2=80=99t work on HP tape drives. Ken =E2=80=94=20 Ken Merry ken@FreeBSD.ORG