mirror of
				https://github.com/torvalds/linux.git
				synced 2025-10-31 00:28:52 +02:00 
			
		
		
		
	 e26fa54604
			
		
	
	
		e26fa54604
		
	
	
	
	
		
			
			This removes the need to explicitly export all symbols. Generate helper exports similarly to what's currently done for Rust crates. These helpers are exclusively called from within Rust code and therefore can be treated similar as other Rust symbols. Signed-off-by: Gary Guo <gary@garyguo.net> Reviewed-by: Boqun Feng <boqun.feng@gmail.com> Tested-by: Boqun Feng <boqun.feng@gmail.com> Link: https://lore.kernel.org/r/20240817165302.3852499-1-gary@garyguo.net [ Fixed dependency path, reworded slightly, edited comment a bit and rebased on top of the changes made when applying Andreas' patch (e.g. no `README.md` anymore, so moved the edits). - Miguel ] Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
		
			
				
	
	
		
			15 lines
		
	
	
	
		
			433 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
	
		
			433 B
		
	
	
	
		
			C
		
	
	
	
	
	
| // SPDX-License-Identifier: GPL-2.0
 | |
| 
 | |
| #include <linux/export.h>
 | |
| #include <linux/workqueue.h>
 | |
| 
 | |
| void rust_helper_init_work_with_key(struct work_struct *work, work_func_t func,
 | |
| 				    bool onstack, const char *name,
 | |
| 				    struct lock_class_key *key)
 | |
| {
 | |
| 	__init_work(work, onstack);
 | |
| 	work->data = (atomic_long_t)WORK_DATA_INIT();
 | |
| 	lockdep_init_map(&work->lockdep_map, name, key, 0);
 | |
| 	INIT_LIST_HEAD(&work->entry);
 | |
| 	work->func = func;
 | |
| }
 |