# DF-1978 PoC — queue_delayed_work ignores wq parameter

## Kernel module demonstrating the mismatch

```c
/* wqbug.c -- Build & run: kldload ./wqbug.ko */
#include <sys/types.h>
#include <sys/kernel.h>
#include <sys/module.h>
#include <drm/drmP.h>
#include <linux/workqueue.h>
static struct delayed_work dw;
static struct workqueue_struct *my_ordered_wq;
static void my_func(struct work_struct *work) {
    kprintf("delayed work ran on worker %p (expected ordered wq worker)\n",
            container_of(work, struct delayed_work, work)->work.worker);
}
static int wqbug_load(struct module *m, int cmd, void *arg) {
    if (cmd != MOD_LOAD) return 0;
    my_ordered_wq = alloc_ordered_workqueue("mywq", 0);
    INIT_DELAYED_WORK(&dw, my_func);
    queue_delayed_work(my_ordered_wq, &dw, 1);
    tsleep(&wqbug_load, 0, "wqbug", hz * 2);
    return 0;
}
DEV_MODULE(wqbug, wqbug_load, NULL);
```

## Expected output

`dmesg` shows the work executing on a system_wq worker thread instead of the
mywq ordered worker thread. The mywq worker never picks it up -- ordered
semantics are silently broken.
