File README.md of Package kernel-source
# SUSE Kernel Stable Source Package
This repository contains the SUSE kernel-stable source package with build infrastructure, patches, configurations, and documentation for Linux kernel 6.11.3.
## 📚 Documentation Index
### **Getting Started**
- **[Kernel Sources Guide](KERNEL_SOURCES_README.md)** - How to download and work with `linux-6.11.tar.xz`
- **[Module Rebuild Guide](KMOD_REBUILD_README.md)** - When to rebuild custom kernel modules
- **[SUSE Kernel Documentation](README.SUSE)** - Official SUSE kernel development guide
### **Developer Resources**
- **[Patch Policy](README.PATCH-POLICY.SUSE)** - SUSE kernel patch submission guidelines
- **[Kernel Symbols](README.KSYMS)** - Information about kernel symbol exports
## 🚀 Quick Start
### For Building Kernels
```bash
# Clone this repository
git clone <your-repository-url>
cd kernel-stable/kernel-source
# Download kernel sources (automatic during build)
rpmbuild -bp kernel-source.spec
# Or build with OSC
osc build
```
### For Custom Modules
```bash
# Install development packages
zypper install kernel-devel kernel-default-devel
# Build your module
make -C /usr/src/linux-obj/$(uname -m)/default M=$PWD
```
**💡 Tip**: Read [KMOD_REBUILD_README.md](KMOD_REBUILD_README.md) to understand when you need to rebuild modules.
## 📦 Repository Contents
### **Source Files**
- `linux-6.11.tar.xz` - Linux kernel source archive (140MB) - [Download Guide](KERNEL_SOURCES_README.md)
- `config.tar.bz2` - Kernel configurations for all architectures
- `patches.*.tar.bz2` - SUSE patches and modifications
- `kabi.tar.bz2` - Kernel ABI compatibility information
### **Build Infrastructure**
- `kernel-*.spec` - RPM package specifications
- `*.changes` - Package changelog files
- `series.conf` - Patch application configuration
- Build scripts: `apply-patches`, `guards`, `mkspec`, etc.
### **Documentation**
- `README.md` - This file (main entry point)
- `KERNEL_SOURCES_README.md` - Kernel source download guide
- `KMOD_REBUILD_README.md` - Module compatibility guide
- `README.SUSE` - Official SUSE documentation
- `README.PATCH-POLICY.SUSE` - Patch submission guidelines
## 🔧 Available Kernel Flavors
| Flavor | Description | Use Case |
|--------|-------------|----------|
| **default** | Standard kernel | General purpose systems |
| **kvmsmall** | Minimal KVM kernel | Virtual machines, development |
| **debug** | Debug-enabled kernel | Kernel debugging, development |
| **vanilla** | Upstream kernel | Testing, comparison |
| **64kb** | 64KB page size | ARM64 systems |
**📖 Learn More**: See [kernel size optimization guide](KMOD_REBUILD_README.md#kernel-size-optimization) for reducing kernel footprint.
## 🏗️ Build Process Overview
1. **Download**: Kernel sources fetched from kernel.org
2. **Extract**: `linux-6.11.tar.xz` extracted to build directory
3. **Patch**: SUSE patches applied via `series.conf`
4. **Configure**: Architecture/flavor configs from `config.tar.bz2`
5. **Build**: Kernel compiled with SUSE modifications
6. **Package**: RPM packages created for distribution
## 🔄 Version Information
- **Kernel Version**: 6.11.3
- **SUSE Release**: 16.1.shift5
- **Git Commit**: 006a2b4f54ea8081d692c34fd38bd1c2b57d8bd1
- **Build Timestamp**: 2024-10-10 10:55:01 +0000
## 🛠️ Development Workflow
### Working with OSC and Git
This repository supports both OSC (OpenSUSE Build Service) and Git workflows:
```bash
# Sync between OSC and Git
./sync-with-osc.sh
# Commit to both systems
git add . && git commit -m "Your changes"
osc commit -m "Your changes"
```
### Making Changes
1. **Edit files** (configs, patches, specs)
2. **Test locally** with `rpmbuild` or `osc build`
3. **Update documentation** if needed
4. **Commit to Git** for version control
5. **Submit to OSC** for official builds
## 🐛 Troubleshooting
### Common Issues
- **Missing sources**: See [KERNEL_SOURCES_README.md](KERNEL_SOURCES_README.md)
- **Module incompatibility**: Check [KMOD_REBUILD_README.md](KMOD_REBUILD_README.md)
- **Build failures**: Review the [SUSE documentation](README.SUSE)
- **Patch application**: Check `series.conf` and patch order
### Getting Help
- **SUSE Documentation**: [README.SUSE](README.SUSE)
- **Kernel Development**: [Linux Kernel Documentation](https://www.kernel.org/doc/)
- **SUSE Support**: Enterprise customers contact support
- **Community**: openSUSE forums and mailing lists
## 🔗 Related Projects
- **[SUSE Kernel Source](https://github.com/SUSE/kernel-source)** - Official upstream repository
- **[openSUSE Kernel](https://github.com/openSUSE/kernel-source)** - Alternative mirror
- **[Linux Kernel](https://github.com/torvalds/linux)** - Upstream Linux kernel
## 📄 License
GPL-2.0-only - See individual files for specific licensing terms.
## 🏷️ Tags
`linux-kernel` `suse` `opensuse` `rpm-packaging` `kernel-development` `system-programming`
---
**Need help?** Start with the [documentation index](#-documentation-index) above to find the right guide for your use case.