Difference between revisions of "Talk:Projects"

From OpenZFS
Jump to navigation Jump to search
m
Line 24: Line 24:


----
----
Lundman, can you add this as a project idea?  I think that in general, creating a "porting layer" which abstracts out some of these details would help reduce the diffs between platforms.
[[User:Mahrens|Mahrens]] ([[User talk:Mahrens|talk]]) 23:19, 15 August 2013 (UTC)

Revision as of 23:19, 15 August 2013

I guess during the latest port of ZFS, a few things could have helped with the work, and would help with future merges.

* UIO

Most platforms have exposed struct uio, but not OSX. Here we have API calls like uio_create, uio_resid, uio_setoffset. On most platforms these would just be simple macros

#define uio_resid(X) (X)->u_resid

So it would be of benefit to OSX, but not really to any other platform. This would probably be unpopular.


* struct buf

Similar situation with ``struct buf`` in vdev_disk, but since it is only used in one location it is of less interest


Most other differences can be handled with macros on OSX. ( (S_ISDIR(ZTOV(zp)) -> vnode_isdir(ZTOV(zp)) etc )

lundman


Lundman, can you add this as a project idea? I think that in general, creating a "porting layer" which abstracts out some of these details would help reduce the diffs between platforms. Mahrens (talk) 23:19, 15 August 2013 (UTC)