summaryrefslogtreecommitdiff
path: root/sys/dev/pci
AgeCommit message (Collapse)Author
2013-12-22size_t format string fixesStefan Fritsch
2013-12-21Advertise that we provide monotonic timestamps.Mark Kettenis
2013-12-21i915_gem_mmap_ioctl() should return a Linux-style negative errno value.Mark Kettenis
2013-12-21Fix locking in the page fault handler. A (somewhat malicious) userlandMark Kettenis
program could force a copyin/copyout from/to memory mapped through the GTT, forcing a "locking against myself" panic. The intel-gpu-tools "package" has a test for this. The problem can be circumvented by making the fault handler fail if we already hold the (DRM) lock. This will make the copyin/copyout return with EFAULT making the caller fall back on a "slow path". This makes it obvious that using a shared (read) lock here doesn't make any sense. So use an exclusive (write) lock like everywhere else in the inteldrm code.
2013-12-20regenMatthew Dempsky
2013-12-20add virtio scsiMatthew Dempsky
2013-12-20Add vioscsi(4) driver.Matthew Dempsky
Still a work-in-progress, but functional enough to work with both Google Compute Engine and RHEVM. Committing so additional testing and cleanup can be handled in tree. thx Jiri B for RHEVM testing ok dlg, deraadt
2013-12-16Switch generic drm modesetting code over to Linux-style negative errnoMark Kettenis
return values. Fixes at least one bug where userland would see a negative errno value and hopefully doesn't introduce any new ones.
2013-12-15Fix error handling of ->fb_create() call. Prevents kernel panic if anMark Kettenis
unsupported frame buffer configuration is requested.
2013-12-15Overhaul the pread and pwrite code to match what Linux does. Should fix a fewMark Kettenis
more cache coherency issues, hopefully reducing the number of artifacts showing up the screen.
2013-12-15Abuse phys_map to reliably wait for kva.Mark Kettenis
2013-12-11Make obj->pages a simple array instead of an array of bus_dma_segment_t's.Mark Kettenis
Simplifies things a bit and reduces the diffs with Linux a bit too.
2013-12-09Bring i915_gem_mmap_ioctl a bit closer to the Linux code.Mark Kettenis
2013-12-09Remove MD intagp(4) code that is unused now that inteldrm(4) manages the GTTMark Kettenis
all by itself.
2013-12-09initialize staterr, no functional change; from david hillMike Belopuhov
2013-12-08simplify activate functionTheo de Raadt
2013-12-08add static back to the ttm functionsJonathan Gray
ok kettenis@
2013-12-07Rewrite receive filter handling and ioctl bits. Fixes not being able toBrad Smith
bring the interface out of all multicast mode once a range of multicast addresses has been found. Tested with QEMU and VMware's pcn(4) emulated adapters.
2013-12-07Emulating wait_event_timeout() using msleep() is hard. This version shouldMark Kettenis
avoid the negative timeout panic and make __wait_seqno() properly wait forever if no timeout was specified.
2013-12-07Remove the agp-specific bus_dma code. It is no longer used now thatMark Kettenis
inteldrm(4) manages the GTT by itself. ok miod@
2013-12-07No need to blow away the cache after updating GTT entries. The driver alreadyMark Kettenis
flushes individual cache lines when needed.
2013-12-07Now that we properly flush caches, we can enable cpu relocations.Mark Kettenis
2013-12-07Enable fast path for relocations.Mark Kettenis
ok jsg@
2013-12-07Some fixes for jme_encap()..Brad Smith
- Remove the maximum DMA segments handling bits as it is unused between DragonFly and OpenBSD. - Fix error handling for bus_dmamap_load_mbuf() so as to not try unloading a DMA map that had not already been loaded. - Clean up the DMA chain defragmenting path to remove unwanted printfs and simplify things a bit. - Have jme_encap() check the number of mapped DMA segments against the TX ring to see if it'll fit as do most of the driver nowadays. - Remove the KASSERT's that shouldn't be there. - Simplify the dummy descriptor handling to be closer to the FreeBSD driver since unlike the DragonFly driver this originated from our driver always uses the 64-bit dummy descriptor. - If the ring was full make sure to IF_PREPEND() the packet back on the queue since it wasn't transmitted. Tested by myself, comete@daknet.org and vigdis+obsd@chown.me.
2013-12-06Change a WARN_ON into a BUG_ON to match Linux.Mark Kettenis
2013-12-06Add a DVACT_WAKEUP op to the *_activate() API. This is called after theTheo de Raadt
kernel resumes normal (non-cold, able to run processes, etc) operation. Previously we were relying on specific DVACT_RESUME op's in drivers creating callback/threads themselves, but that has become too common, indicating the need for a built-in mechanism. ok dlg kettenis, tested by a sufficient amount of people
2013-12-06It seems to be possible to truncate an object while it is still mapped.Mark Kettenis
Don't panic in that case but force a page fault instead. Hopefully this fixes the panic during coredump that deraadt@ reported.
2013-12-06Another round of reducing diffs with Linux.Mark Kettenis
2013-12-05Fully unstub intel_overlay_{map|unmap}_regs.Mark Kettenis
2013-12-05Rename 'struct drm_obj' to 'struct drm_gem_object' to reduce the diffs withMark Kettenis
Linux. ok jsg@
2013-12-04kill a debug printf; noticed by sthenMike Belopuhov
2013-12-03Seems we simply have to live with fatal firmware errors. Even Linux, with itsMark Kettenis
driver written by Intel engineers occasionally gets them. So when we get one, simply reset the chip, reload the firware and bring the interface up again. Tested by naddy@, who unfortunately is experiencing the quantum zeno effect making his iwi(4) not crap out. ok stsp@
2013-12-03Remove some unused cruft.Mark Kettenis
2013-12-01Remove some prototypes for functions that no longer exist.Mark Kettenis
2013-12-01The flush_tlb() method is a no-op so don't bother.Mark Kettenis
2013-12-01drm/i915: no lvds quirk for hp t5740Mark Kettenis
From Ben Mesman 117b91f41d99e88338e1f9577ced365e777a9098 in ubuntu 3.8 45a211d75137b1ac869a8a758a6667f15827a115 in mainline linux
2013-12-01drm/i915: Fix write-read race with multiple ringsMark Kettenis
From Chris Wilson caf40bcc8f6751b723f0ec78e2f67beb771bfb68 in ubuntu 3.8 02978ff57a5bdfbf703d2bc5a4d933a53ede3144 in mainline linux
2013-12-01drm/i915: inverted brightness quirk for Acer Aspire 4736ZMark Kettenis
From Daniel Vetter 96f2e8dd3f2492d3bbf232fa0afc1e0e065e7d52 in ubuntu 3.8 ac4199e0f047546aa40172785e26c82b54bbe811 in mainline linux
2013-12-01drm/i915: Adding more reserved PCI IDs for Haswell.Mark Kettenis
From Rodrigo Vivi 349fe2edae985d44dc8ca27c6441b20408a9e184 in ubuntu 3.8 1c98b4871cca4b7ce07e19f92f934d47cf7210b0 in mainline linux
2013-12-01drm/i915: Correct obj->mm_list link to dev_priv->dev_priv->mm.inactive_listMark Kettenis
From Xiong Zhang 77e700964bdb06caf7eaf03371d7ffd4a6500199 in ubuntu 3.8 067556084a0e412013af6b0250a3143ae5afde6d in mainline linux
2013-12-01Bring back the DRM_IOCTL_I915_GEM_WAIT diff now that I've figured out whatMark Kettenis
made it fail (WARN_ON() was evaluating its argument multiple times). This time, also advertise support through I915_PARAM_HAS_WAIT_TIMEOUT.
2013-12-01Fix WARN() and WARN_ON(); the condition should only be evaluated once.Mark Kettenis
Properly implement WARN_ON_ONCE() as well. ok jsg@
2013-11-30Oops! Only intended to commit the i915_dma.c changes in the previous commit.Mark Kettenis
2013-11-30Reorder some case statements to reduce the diffs with Linux.Mark Kettenis
2013-11-30Seems we simply have to live with fatal firmware errors. Even Linux, with itsMark Kettenis
driver written by Intel engineers occasionally gets them. So when we get one, simply reset the chip, reload the firware and bring the interface up again. tested by stsp@, pascal@ ok stsp@
2013-11-30Enable some #ifdef'ed out SandyBridge-specific code that seems to work fine.Mark Kettenis
2013-11-30Restore frame buffer upon last close; makes sure we we have a usable consoleMark Kettenis
after exiting X. tested by tobiasu@
2013-11-29Should be safe to allow intel_ring_wait_seqno() to be interrupted.Mark Kettenis
Reduces diffs with Linux.
2013-11-28Re-enable RADEON_INFO_VA_START and RADEON_INFO_IB_VM_MAX_SIZE.Mark Kettenis
suggested by jsg@
2013-11-28Add short-circuit code to __wait_seqno() that's also present in Linux.Mark Kettenis