Commit 24f4b40e authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'hot-fixes' (fixes for rc6)

This is a collection of three fixes for small annoyances.

Two of these are already pending in other trees, but I really don't want
to release another -rc with these issues pending, so I picked up the
patches for these things directly.  We'll end up with duplicate commits
eventually, I prefer that over having these issues pending.

The third one is just me getting rid of another BUG_ON() just because it
was reported and I dislike those things so much.

* merge 'hot-fixes' branch:
  ida: don't use BUG_ON() for debugging
  drm/aperture: Run fbdev removal before internal helpers
  ptrace: fix clearing of JOBCTL_TRACED in ptrace_unfreeze_traced()
parents 952c53cd fc82bbf4
Loading
Loading
Loading
Loading
+15 −11
Original line number Diff line number Diff line
@@ -329,15 +329,7 @@ int drm_aperture_remove_conflicting_pci_framebuffers(struct pci_dev *pdev,
						     const struct drm_driver *req_driver)
{
	resource_size_t base, size;
	int bar, ret = 0;

	for (bar = 0; bar < PCI_STD_NUM_BARS; ++bar) {
		if (!(pci_resource_flags(pdev, bar) & IORESOURCE_MEM))
			continue;
		base = pci_resource_start(pdev, bar);
		size = pci_resource_len(pdev, bar);
		drm_aperture_detach_drivers(base, size);
	}
	int bar, ret;

	/*
	 * WARNING: Apparently we must kick fbdev drivers before vgacon,
@@ -345,9 +337,21 @@ int drm_aperture_remove_conflicting_pci_framebuffers(struct pci_dev *pdev,
	 */
#if IS_REACHABLE(CONFIG_FB)
	ret = remove_conflicting_pci_framebuffers(pdev, req_driver->name);
	if (ret)
		return ret;
#endif
	if (ret == 0)
	ret = vga_remove_vgacon(pdev);
	if (ret)
		return ret;

	for (bar = 0; bar < PCI_STD_NUM_BARS; ++bar) {
		if (!(pci_resource_flags(pdev, bar) & IORESOURCE_MEM))
			continue;
		base = pci_resource_start(pdev, bar);
		size = pci_resource_len(pdev, bar);
		drm_aperture_detach_drivers(base, size);
	}

	return 0;
}
EXPORT_SYMBOL(drm_aperture_remove_conflicting_pci_framebuffers);
+1 −1
Original line number Diff line number Diff line
@@ -222,7 +222,7 @@ static void ptrace_unfreeze_traced(struct task_struct *task)
	if (lock_task_sighand(task, &flags)) {
		task->jobctl &= ~JOBCTL_PTRACE_FROZEN;
		if (__fatal_signal_pending(task)) {
			task->jobctl &= ~TASK_TRACED;
			task->jobctl &= ~JOBCTL_TRACED;
			wake_up_state(task, __TASK_TRACED);
		}
		unlock_task_sighand(task, &flags);
+2 −1
Original line number Diff line number Diff line
@@ -491,7 +491,8 @@ void ida_free(struct ida *ida, unsigned int id)
	struct ida_bitmap *bitmap;
	unsigned long flags;

	BUG_ON((int)id < 0);
	if ((int)id < 0)
		return;

	xas_lock_irqsave(&xas, flags);
	bitmap = xas_load(&xas);