History log of /freebsd-12.1/sys/compat/linuxkpi/common/src/linux_compat.c (Results 1 – 25 of 89)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: release/12.2.0
# e268defb 08-Jul-2020 Gordon Tetlow <[email protected]>

Fix kernel panic in LinuxKPI subsystem.

Approved by: so
Security: FreeBSD-EN-20:14.linuxpki


Revision tags: release/11.4.0, release/12.1.0
# 500cdf70 16-Sep-2019 Ed Maste <[email protected]>

MFC r346445: Enable ioremap for aarch64 in the LinuxKPI

Required for Mellanox drivers (e.g. on Ampere eMAG at Packet.com).

PR: 237055
Submitted by: Greg V <[email protected]>


Revision tags: release/11.3.0
# b41edba3 24-May-2019 Johannes Lundberg <[email protected]>

MFC r347837:
LinuxKPI: Update access_ok macro for v5.0.

Check LINUXKPI_VERSION macro for backwards compatibility.
It's recommended to update any drivers that depend on the older KPI
so we can deprec

MFC r347837:
LinuxKPI: Update access_ok macro for v5.0.

Check LINUXKPI_VERSION macro for backwards compatibility.
It's recommended to update any drivers that depend on the older KPI
so we can deprecate < 5.0 code as we update to newer Linux version.
This patch is part of D19565

Reviewed by: hps
Approved by: imp (mentor), hps

show more ...


# 089e611a 21-May-2019 Johannes Lundberg <[email protected]>

MFC r347592:
LinuxKPI: Let del_timer return a value to match Linux.

This patch is part of https://reviews.freebsd.org/D19565.

Reviewed by: hps
Approved by: imp (mentor), hps


# 19219230 16-May-2019 Hans Petter Selasky <[email protected]>

MFC r347185:
Allow controlling pr_debug at runtime in the LinuxKPI.

Turning on pr_debug at compile time make it non-optional at runtime.
This often means that the amount of the debugging is unbearab

MFC r347185:
Allow controlling pr_debug at runtime in the LinuxKPI.

Turning on pr_debug at compile time make it non-optional at runtime.
This often means that the amount of the debugging is unbearable.
Allow developer to turn on pr_debug output only when needed.

Build tested drm-current-kmod prior to commit.

Submitted by: kib@
Sponsored by: Mellanox Technologies

show more ...


# 5a96a3e6 02-May-2019 Johannes Lundberg <[email protected]>

MFC r346712:
Don't call cdev_init where cdev_alloc is called. cdev_alloc already
handles initialization.

Reviewed by: hps
Approved by: imp (mentor)


# 05f046a6 06-Jan-2019 Konstantin Belousov <[email protected]>

MFC r342628, r342670 (by cem):
Fix linux_destroy_dev() behaviour when there are still files open from
the destroying cdev.

Also bump __FreeBSD_version since struct linux_cdev size on i386 increased

MFC r342628, r342670 (by cem):
Fix linux_destroy_dev() behaviour when there are still files open from
the destroying cdev.

Also bump __FreeBSD_version since struct linux_cdev size on i386 increased
(this is unmergeable r342629 on HEAD).

show more ...


# f05540ec 06-Jan-2019 Konstantin Belousov <[email protected]>

MFC r342627:
Implement zap_vma_ptes() for managed device objects.


# 1005063f 06-Jan-2019 Konstantin Belousov <[email protected]>

MFC r342625, r342631:
Use IDX_TO_OFF().


# 113c9572 12-Dec-2018 Hans Petter Selasky <[email protected]>

MFC r341518:
linuxkpi: Fix for use-after-free when tearing down character devices.

Make sure we hold a reference on the character device for every opened file
to prevent the character device to be f

MFC r341518:
linuxkpi: Fix for use-after-free when tearing down character devices.

Make sure we hold a reference on the character device for every opened file
to prevent the character device to be freed prematurely.

Sponsored by: Mellanox Technologies

show more ...


# 695056a9 10-Dec-2018 Konstantin Belousov <[email protected]>

MFC r341447:
Improve procstat reporting for the linux cdev file descriptors.


Revision tags: release/12.0.0
# 711db39f 01-Nov-2018 Hans Petter Selasky <[email protected]>

MFC r339924:
Implement the dump_stack() function in the LinuxKPI.

Approved by: re (gjb)
Submitted by: Johannes Lundberg <[email protected]>
Sponsored by: Mellanox Technologies


Revision tags: release/11.2.0
# 4b706099 30-Mar-2018 Hans Petter Selasky <[email protected]>

Optimise use of Giant in the LinuxKPI.

- Make sure Giant is locked when calling PCI device methods.
Newbus currently requires this.

- Avoid unlocking Giant right before aquiring the sleepqueue lock

Optimise use of Giant in the LinuxKPI.

- Make sure Giant is locked when calling PCI device methods.
Newbus currently requires this.

- Avoid unlocking Giant right before aquiring the sleepqueue lock.
This can save a task switch.

MFC after: 1 week
Sponsored by: Mellanox Technologies

show more ...


# 83630517 23-Mar-2018 Ed Maste <[email protected]>

linuxkpi whitespace cleanup

Reviewed by: hselasky, markj
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D14807


# be15e133 09-Mar-2018 Hans Petter Selasky <[email protected]>

Implement proper support for complete_all() in the LinuxKPI.

When complete_all() is called there might be multiple waiters. The
current implementation could only handle one waiter. Make sure the
com

Implement proper support for complete_all() in the LinuxKPI.

When complete_all() is called there might be multiple waiters. The
current implementation could only handle one waiter. Make sure the
completion is sticky when complete_all() is called to be compatible
with Linux.

Found by: Johannes Lundberg <[email protected]>
MFC after: 1 week
Sponsored by: Mellanox Technologies
Sponsored by: Limelight Networks

show more ...


# 9555cfd2 02-Mar-2018 Hans Petter Selasky <[email protected]>

Rename callout member in struct timer_list to match the one in struct
delayed_work in the LinuxKPI. This allows the timer_pending() function
macro to be used with delayed work structures.

No functio

Rename callout member in struct timer_list to match the one in struct
delayed_work in the LinuxKPI. This allows the timer_pending() function
macro to be used with delayed work structures.

No functional nor structural change.

MFC after: 1 week
Submitted by: Johannes Lundberg <[email protected]>
Sponsored by: Mellanox Technologies
Sponsored by: Limelight Networks

show more ...


# 94944062 22-Feb-2018 Hans Petter Selasky <[email protected]>

Return correct error code to user-space when a system call receives a
signal in the LinuxKPI.

The read(), write() and mmap() system calls can return either EINTR or
ERESTART upon receiving a signal.

Return correct error code to user-space when a system call receives a
signal in the LinuxKPI.

The read(), write() and mmap() system calls can return either EINTR or
ERESTART upon receiving a signal. Add code to figure out the correct
return value by temporarily storing the return code from the relevant
FreeBSD kernel APIs in the Linux task structure.

MFC after: 3 days
Sponsored by: Mellanox Technologies

show more ...


# 0628fc90 18-Feb-2018 Hans Petter Selasky <[email protected]>

Make the vm_fault structure in the LinuxKPI compatible with
newer versions of the Linux kernel. No functional change.

MFC after: 1 week
Submitted by: Johannes Lundberg <[email protected]>
Sponsored

Make the vm_fault structure in the LinuxKPI compatible with
newer versions of the Linux kernel. No functional change.

MFC after: 1 week
Submitted by: Johannes Lundberg <[email protected]>
Sponsored by: Mellanox Technologies
Sponsored by: Limelight Networks

show more ...


# f71d0b0d 01-Feb-2018 Hans Petter Selasky <[email protected]>

Fix some recent regressions after r328436 in the LinuxKPI:

1) The OPW() function macro should have the same return type like the
function it executes.
2) The DEVFS I/O-limit should be enforced for a

Fix some recent regressions after r328436 in the LinuxKPI:

1) The OPW() function macro should have the same return type like the
function it executes.
2) The DEVFS I/O-limit should be enforced for all character device reads
and writes.
3) The character device file handle should be passable, same as for
DEVFS based file handles.

Reported by: jbeich @
MFC after: 1 week
Sponsored by: Mellanox Technologies

show more ...


# 3f3735db 01-Feb-2018 Hans Petter Selasky <[email protected]>

Make sure the LinuxKPI's internal ERESTARTSYS error code gets translated
into ERESTART for mmap and page fault calls aswell.

MFC after: 1 week
Sponsored by: Mellanox Technologies


# e23ae408 26-Jan-2018 Hans Petter Selasky <[email protected]>

Decouple Linux files from the belonging character device right after open
in the LinuxKPI. This is done by calling finit() just before returning a magic
value of ENXIO in the "linux_dev_fdopen" funct

Decouple Linux files from the belonging character device right after open
in the LinuxKPI. This is done by calling finit() just before returning a magic
value of ENXIO in the "linux_dev_fdopen" function.

The Linux file structure should mimic the BSD file structure as much as
possible. This patch decouples the Linux file structure from the belonging
character device right after the "linux_dev_fdopen" function has returned.
This fixes an issue which allows a Linux file handle to exist after a
character device has been destroyed and removed from the directory index
of /dev. Only when the reference count of the BSD file handle reaches zero,
the Linux file handle is destroyed. This fixes use-after-free issues related
to accessing the Linux file structure after the character device has been
destroyed.

While at it add a missing NULL check for non-present file operation.
Calling a NULL pointer will result in a segmentation fault.

Reviewed by: kib @
MFC after: 1 week
Sponsored by: Mellanox Technologies

show more ...


# 0c19d064 13-Nov-2017 Hans Petter Selasky <[email protected]>

Properly handle the case where the linux_cdev_handle_insert() function
in the LinuxKPI returns NULL. This happens when the VM area's private
data handle already exists and could cause a so-called NUL

Properly handle the case where the linux_cdev_handle_insert() function
in the LinuxKPI returns NULL. This happens when the VM area's private
data handle already exists and could cause a so-called NULL pointer
dereferencing issue prior to this fix.

Found by: [email protected]
MFC after: 1 week
Sponsored by: Mellanox Technologies

show more ...


# 8ead3a99 03-Nov-2017 Hans Petter Selasky <[email protected]>

Remove redundant dev->si_drv1 NULL checks in the LinuxKPI.
This pointer is checked during the linux_dev_open() callback and does
not need to be NULL checked again. It should always be set for
charact

Remove redundant dev->si_drv1 NULL checks in the LinuxKPI.
This pointer is checked during the linux_dev_open() callback and does
not need to be NULL checked again. It should always be set for
character devices belonging to the "linuxcdevsw" and technically
there is no need to NULL check this pointer at all.

Suggested by: kib @
MFC after: 1 week
Sponsored by: Mellanox Technologies

show more ...


# 627ac5b4 13-Oct-2017 Hans Petter Selasky <[email protected]>

Don't call selrecord() outside the select system call in the LinuxKPI, because
then td->td_sel is NULL and this will result in a segfault inside selrecord().
This happens when only using kqueue() to

Don't call selrecord() outside the select system call in the LinuxKPI, because
then td->td_sel is NULL and this will result in a segfault inside selrecord().
This happens when only using kqueue() to poll for read and write events.
If select() and kqueue() is mixed there won't be a segfault.

Reported by: Johannes Lundberg
MFC after: 1 week
Sponsored by: Mellanox Technologies

show more ...


Revision tags: release/10.4.0
# 40f53a7c 22-Sep-2017 Hans Petter Selasky <[email protected]>

Add support for 32-bit compatibility IOCTLs in the LinuxKPI.

Bump the FreeBSD version to force recompilation of external
kernel modules due to structure change.

PR: 222504
Submitted by: Greg V <gr

Add support for 32-bit compatibility IOCTLs in the LinuxKPI.

Bump the FreeBSD version to force recompilation of external
kernel modules due to structure change.

PR: 222504
Submitted by: Greg V <[email protected]>
MFC after: 1 week
Sponsored by: Mellanox Technologies

show more ...


1234