<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/ofed/include/linux/linux_compat.c, branch stable/9</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=stable%2F9</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=stable%2F9'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2016-01-23T17:08:17Z</updated>
<entry>
<title>MFC 294366:</title>
<updated>2016-01-23T17:08:17Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2016-01-23T17:08:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=ea6179be4924ee772a0fc0a9d5d77b5a9121039c'/>
<id>urn:sha1:ea6179be4924ee772a0fc0a9d5d77b5a9121039c</id>
<content type='text'>
Initialize vm_page_prot to VM_MEMATTR_DEFAULT instead of 0.

If a driver's Linux mmap callback passed vm_page_prot through unchanged,
then linux_dev_mmap_single() would try to apply whatever VM_MEMATTR_xxx
value 0 is to the mapping.  On x86, VM_MEMATTR_DEFAULT is the PAT value
for write-back (WB) which is 6, while 0 maps to the PAT value for
uncacheable (UC).  Thus, any mmap request that did not explicitly set
page_prot was tried to map memory as UC triggering the warning in
sg_pager_getpages().

Sponsored by:	Chelsio Communications
</content>
</entry>
<entry>
<title>MFC 287440:</title>
<updated>2015-09-11T00:20:15Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2015-09-11T00:20:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=caddcb2e8f428069951d0babaadb4421c76df34d'/>
<id>urn:sha1:caddcb2e8f428069951d0babaadb4421c76df34d</id>
<content type='text'>
Currently the Linux character device mmap handling only supports mmap
operations that map a single page that has an associated vm_page_t.
This does not permit mapping larger regions (such as a PCI memory
BAR) and it does not permit mapping addresses beyond the top of RAM
(such as a 64-bit BAR located above the top of RAM).

Instead of using a single OBJT_DEVICE object and passing the physaddr via
the offset as a hack, create a new sglist and OBJT_SG object for each
mmap request. The requested memory attribute is applied to the object
thus affecting all pages mapped by the request.

Sponsored by:	Chelsio
</content>
</entry>
<entry>
<title>MFC r285088:</title>
<updated>2015-07-21T16:53:45Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2015-07-21T16:53:45Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=d11dc921758483f5c5389cd91d242030b3d8114b'/>
<id>urn:sha1:d11dc921758483f5c5389cd91d242030b3d8114b</id>
<content type='text'>
Fix broken implementation of "kvasprintf()" function by adding missing
kmalloc() call. Make function global instead of static inline to fix
compiler warnings about passing variable argument lists to inline
functions.

Sponsored by:   Mellanox Technologies
Requested by:	markj @
</content>
</entry>
<entry>
<title>MFC r277396, r278681, r278865, r278924, r279205, r280208,</title>
<updated>2015-05-05T20:59:43Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2015-05-05T20:59:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8bcc6d6199216d1170eb64dd6dc1624df00d09ca'/>
<id>urn:sha1:8bcc6d6199216d1170eb64dd6dc1624df00d09ca</id>
<content type='text'>
  r280210, r280764 and r280768:

Update the Linux compatibility layer:
- Add more functions.
- Add some missing includes which are needed when the header files
  are not included in a particular order.
- The kasprintf() function cannot be inlined due to using a variable
  number of arguments. Move it to a C-file.
- Fix problems about 32-bit ticks wraparound and unsigned long
  conversion. Jiffies or ticks in FreeBSD have integer type and are
  not long.
- Add missing "order_base_2()" macro.
- Fix BUILD_BUG_ON() macro.
- Declare a missing symbol which is needed when compiling without -O2
- Clean up header file inclusions in the linux/completion.h, linux/in.h
  and linux/fs.h header files.

Sponsored by:	Mellanox Technologies
</content>
</entry>
<entry>
<title>MFC r280211:</title>
<updated>2015-03-25T10:46:13Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2015-03-25T10:46:13Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=bd4761e0b83bd65ba391313efed703a46f28e408'/>
<id>urn:sha1:bd4761e0b83bd65ba391313efed703a46f28e408</id>
<content type='text'>
Add missing void pointer argument to SYSINIT() functions.

Sponsored by:   Mellanox Technologies
</content>
</entry>
<entry>
<title>MFC r276749:</title>
<updated>2015-01-13T17:16:06Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2015-01-13T17:16:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=44eb971fc7c8bd6fec70db62a384e3aa0cec7824'/>
<id>urn:sha1:44eb971fc7c8bd6fec70db62a384e3aa0cec7824</id>
<content type='text'>
Fixes and updates for the Linux compatibility layer:
- Remove unsupported "bus" field from "struct pci_dev".
- Fix logic inside "pci_enable_msix()" when the number of allocated
  interrupts are less than the number of available interrupts.
- Update header files included from "list.h".
- Ensure that "idr_destroy()" removes all entries before destroying
  the IDR root node(s).
- Set the "device-&gt;release" function so that we don't leak memory at
  device destruction.
- Use FreeBSD's "log()" function for certain debug printouts.
- Put parenthesis around arguments inside the min, max, min_t and max_t macros.
- Make sure we don't leak file descriptors by dropping the extra file
  reference counts done by the FreeBSD kernel when calling falloc()
  and fget_unlocked().

Sponsored by:	Mellanox Technologies
</content>
</entry>
<entry>
<title>MFC r254122, r254123, r256116, r255970, r247671, r269861, r268314, r256269,</title>
<updated>2014-10-30T15:41:25Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2014-10-30T15:41:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f5b416b52dfc022f915ae19d84241c8aa58c4f93'/>
<id>urn:sha1:f5b416b52dfc022f915ae19d84241c8aa58c4f93</id>
<content type='text'>
  r255969, r256179, r230135, r254121, r255932, r255972, r255973, r256281,
  r256470, r257867, r259608, r269862, r271127, r272407, r257864, r256682,
  r258276, r254734, r247675, r254735 and r272683:

Hardware driver update from Mellanox Technologies, including:
 - improved performance
 - better stability
 - new features
 - bugfixes

Supported HCAs:
 - ConnectX-2
 - ConnectX-3
 - ConnectX-3 Pro

NOTE:
  - TSO feature needs r271946, which is not yet merged.

Sponsored by:	Mellanox Technologies
</content>
</entry>
<entry>
<title>MFC 251617:</title>
<updated>2013-06-20T19:56:26Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2013-06-20T19:56:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3b95c1e2d615e0586a8cbfbbec4161534baea459'/>
<id>urn:sha1:3b95c1e2d615e0586a8cbfbbec4161534baea459</id>
<content type='text'>
Store a reference to the vnode associated with a file descriptor in the
linux_file structure and use it instead of directly accessing td_fpop
when destroying the linux_file structure.  The td_fpop pointer is not
valid when a cdevpriv destructor is run, and the type-specific close
method has already been called, so f_vnode may not be valid (and the
vnode might have been recycled without our own reference).
</content>
</entry>
<entry>
<title>MFC r239303:</title>
<updated>2012-10-01T06:42:07Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2012-10-01T06:42:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=38e19f6b6c17ab84a2c7673e075e29d4016748e2'/>
<id>urn:sha1:38e19f6b6c17ab84a2c7673e075e29d4016748e2</id>
<content type='text'>
Streamline use of cdevpriv and correct some corner cases.
</content>
</entry>
<entry>
<title>Add the fo_chown and fo_chmod methods to struct fileops and use them</title>
<updated>2011-08-16T20:07:47Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2011-08-16T20:07:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9c00bb9190391479885cfb14ed23fb7003d10109'/>
<id>urn:sha1:9c00bb9190391479885cfb14ed23fb7003d10109</id>
<content type='text'>
to implement fchown(2) and fchmod(2) support for several file types
that previously lacked it. Add MAC entries for chown/chmod done on
posix shared memory and (old) in-kernel posix semaphores.

Based on the submission by:	glebius
Reviewed by:	rwatson
Approved by:	re (bz)
</content>
</entry>
</feed>
