Add error handling for workqueue allocation
Previously, sched_init() did not check whether alloc_workqueue() succeeded.
This could lead to a NULL pointer dereference and kernel crash if memory
allocation failed. This commit adds a check for a NULL return and logs an
error message if allocation fails.
By returning -ENOMEM early, we ensure the module will not be loaded in an
invalid state and avoid undefined behavior or system instability.